Arbitrary resizing of digital video images is widely used in many video display applications. One of these applications is Digital Video Effect (DVE) processing in live video production devices where video images are translated, squeezed or expanded in arbitrary scales with sub-pixel precision. Examples of this type of application can be found in references such as U.S. Pat. No. 7,602,446 and U.S. Pat. No. 7,034,886.
Conventional techniques for video image resizing use poly-phase Finite Impulse Response (FIR) filtering. Poly-phase filter design is key to FIR-based image resizing, and therefore, developments in this area focus on various coefficients for anti-alias filtering and interpolation.
Based on the poly-phase FIR filtering techniques, multirate digital signal processing techniques and theories are well developed for general digital data rate conversion as well as video picture and image resizing. In poly-phase filtering, one-pass or one-stage filtering in the vertical direction requires multiple line buffers. This requirement increases the apparatus cost because of either use of internal memory such as Random Access Memory (RAM) storage or external memory devices. A conventional technique, for example, uses external ultra-high bandwidth Dynamic RAM (DRAM) to pre-store and reorganize video data in order to make the sizes of following line buffers smaller. Since DRAM technology, such as Double Data Rate DDR2/DDR3 Small Outline Dual In-line Memory Module (SODIMM) packages, is widely used and is available at lower prices, this type of technique achieves wide application. However, this method requires DRAM read bandwidth of K times the video data baseband if a K-tap FIR filter is applied, because each video data element in the DRAM is repeatedly read K times for one video data output.
An alternative to FIR filtering is Infinite Impulse Response (IIR) filter technology. IIR has an advantage of fewer terms or lower order than FIR to achieve the same magnitude performance. For instance, a 2nd-order IIR filter can achieve the magnitude performance provided by a 32nd-order FIR filter. In other words, only 2 line buffers in an IIR filter can perform the behaviour of 32 line buffers in an FIR filter, and therefore, an IIR filter can avoid need for extra internal or external memory.
However, an IIR filter has two major disadvantages, including nonlinear phase response and high ringing effect with asymmetrical impulse response. These two defects limit IIR filter usage in 2D video picture processing. IIR filter technology is often applied in an averaging function where the phase delay is not critical.
Directly using IIR filtering to perform an anti-alias function, for example, reveals that the ringing effect is more visible than the non-linear effect, particularly at filter pass band near the baseband of source data. For instance, direct use of IIR filtering in live special effects of video pictures produces a serious artefact such as multiple stripes that follow an edge or object boundary when the live special effect is to move pictures horizontally and/or vertically. The ringing effect or “Gibbs effect” is caused by a sharp transition from pass band to stop band in an IIR filter. That is, a narrow transition band IIR filter tends to produce ringing of at least 5%, and of 20% ringing magnitude when the cutoff frequency is near the baseband of source data.
With narrower bandwidth or a cutoff frequency father away from baseband, ringing becomes less pronounced. This characteristic is one of the main reasons why many applications use IIR to perform averaging.
In one IIR filtering technique, a filtering process starts with an IIR filter structure, counts the number of input zeros, and then checks the count number with a maximum setting. If the count number reaches the maximum setting, then the feedback/denominator terms of the IIR filter are cleared to zero. This changes the behaviour of the IIR magnitude response without changing cutoff-frequency-determined coefficients, and hence makes it difficult to control IIR filter performance, particularly when the filter bandwidth needs to consistently relate to a geometrical downscale.